1
반복의 기초: 왜 반복해야 하는가
EvoClass-AI001Lecture 4
00:00

반복의 기초: 왜 반복해야 하는가

반복반복은 프로그래밍에서 특정 코드 블록을 반복 실행하는 핵심 개념입니다. 이는 수동적인 반복 없이 코드를 여러 번 실행할 수 있게 해주는 핵심 메커니즘으로, "반복하지 마라" (DRY) 원칙에 엄격히 부합합니다. 이 개념은 코드의 효율성과 유지보수성을 보장합니다.

1. 왜 반복해야 하는가: 규모와 효율성

애플리케이션이 현실 세계의 데이터를 처리할 때, 수천 개의 사용자 이름이 포함된 리스트, 데이터베이스 내 수백만 개의 행, 또는 방대한 로그 파일 등 막대한 데이터 집합을 자주 만납니다. 각 항목을 수동으로 처리하는 것은 불가능하며, 반복은 이러한 대규모 구조를 빠르고 오류 없이 자동으로 처리하게 해줍니다.

  • 대규모 시퀀스 처리(예: $N \approx 10^6$개 항목)의 자동화.
  • 데이터 정제 및 여러 입력에 동일한 변환 적용.
  • 일관된 실행을 통해 오류 감소 효과를 가져오며, 수동 반복보다 훨씬 우수합니다.

2. 파이썬의 두 가지 핵심 반복 유형

  • 'for' 반복문: 확정적 반복에 사용됩니다. 이 반복문은 리스트나 문자열과 같은 임의의 시퀀스 또는 기타 반복 가능한 객체의 항목들을 순회합니다. 반복 횟수는 시퀀스의 크기로 결정되므로 미리 알 수 있습니다.
  • 'while' 반복문: 비확정적 반복. 이 반복문은 제어용 부울 조건이 True인 상태로 지속되는 한 코드 블록을 반복 실행합니다. 반복 횟수는 일반적으로 반복문 시작 시 알려지지 않습니다.
  • 확장성: 데이터 과학이나 웹 백엔드 개발과 같이 대량의 데이터를 처리해야 하는 분야에서는 반복문이 강력하고 확장 가능한 애플리케이션을 작성하는 데 필수적입니다.
핵심 개념 확인
어떤 컬렉션을 처리하는지 알고 있다면('쇼핑카트의 모든 항목을 처리하는 것처럼') 'for'를 선택하세요. 이벤트를 기다리는 상황이라면('사용자가 'Q'를 누르기 전까지 게임을 계속 실행하는 것처럼') 'while'을 선택하세요.
Question 1
Which programming principle does iteration directly support by reducing manual code entry?
Single Responsibility Principle
Don't Repeat Yourself (DRY)
Principle of Least Astonishment
YAGNI (You Ain't Gonna Need It)
Question 2
If you need to print every name in a list of 50 student names, which loop type is generally preferred in Python?
The 'for' loop
The 'while' loop
Recursion
Question 3
Iteration is necessary primarily because:
It makes code harder to read.
It allows efficient processing of vast datasets.
It only works with integers.
It is required for variable declaration.